/******************************************************************************/
#define PIXEL_SIZE 0.002 
/******************************************************************************

   'InventoryGui' is a set of visual gui objects which represent character's inventory.

/******************************************************************************/
struct InventoryGui
{
   Inventory    *inv  ; // Inventory which InventoryGui is linked with
   GuiObjs       gobjs; // gui objects
   List<NetItem> list ; // list of items
   GuiImage      slot_image [SLOT_NUM]; // slot images  [slot index of SLOT_TYPE]
   Region       *slot_region[SLOT_NUM]; // slot regions [slot index of SLOT_TYPE]

   // manage
   void create();

   // get
   Bool visible();

   // operations
   void link(Inventory *inv); // link with 'inv' Inventory

   void setGui(); // set visual gui components
   void toggle(); // toggle visibility
   void show  ();
   void hide  ();

   // update
   void update(Player &owner); // handle moving items with mouse

   // draw
   void draw(); // draw item being moved with mouse

   InventoryGui() {inv=NULL; REPAO(slot_region)=NULL;}
}extern
   InvGui;
/******************************************************************************/
